package com.lcf.framework.annotation;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.ComponentScan;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 描述：微服务合并通用注解
 *
 * @author lcf
 * @since 2025/3/30 20:15
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@SpringBootApplication // 启用 Spring Boot 应用
@EnableDiscoveryClient // 启用服务发现客户端
@EnableFeignClients(basePackages = "com.lcf.feign")  // Feign 客户端扫描路径
@MapperScan("com.lcf.**.dao")               // MyBatis Mapper 扫描路径
@ComponentScan(basePackages = "com.lcf")
public @interface EnableMicroService {
}
